<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>demo12-slot01-定义与使用</title>
</head>
<script src="../libs/vue.js"></script>
<style>
    .container{
        width: 100%;
        min-width: 320px;
        max-width: 640px;

        margin:0 auto;
    }
</style>
<body>
    <div id="app">
        <!-- 
            需注意看组件里slot的写法
         -->
        <base-layout>

        <template v-slot:header>
            <h1>Here slot header </h1>
          </template>
        
          <template v-slot:default>
            <p>A slot default</p>
            <p>一个不带 name 的 &lt;slot&gt; 出口会带有隐含的名字“default”。</p>
          </template>
        
          <template v-slot:footer>
            <h3>Slot footer</h3>
          </template>

        </base-layout>
    </div>
</body>

<script>

Vue.component('base-layout',{
    template:`<div class="container">
  <header>
    <!-- 我们希望把页头放这里 -->
    <slot name="header"></slot>

  </header>
  <main>
    <!-- 我们希望把主要内容放这里  -->
    <slot></slot>
  </main>
  <footer>
    <!-- 我们希望把页脚放这里 -->
    <slot name="footer"></slot>
  </footer>
</div>`
})

var app = new Vue({
  el: '#app'
});
</script>
</html>